/**
 * http://usejsdoc.org/
 * @web http
 */
var http = require('http'),
	fs = require('fs'),
	url = require('url'),
	ParseDns = require('./parse_dns');

/**
 * @desc 创建resIndex响应到首页HTML函数
 * @param res http响应对象
 */
function resIndex(res){
	var realPath = __dirname + '/'+ url.parse('index.html').pathname;
	var indexPage = fs.readFileSync(realPath);
	res.writeHead( 200 , {"Content-Type":"text/html"});
	res.end(indexPage);
}

/**
 * @desc 创建resImage响应image函数
 * @param res http响应对象
 */
function resImage(res){
	/**获取当前image的路径*/
	var realPath = __dirname + '/'+ url.parse('logo.jpg').pathname;
	var indexPage = fs.readFileSync(realPath);
	res.writeHead( 200 , {"Content-Type":"img/jpg"});
	res.end(indexPage);
}


/**
 * @desc 创建resDefault响应404函数
 * @param res http响应对象
 */
function resDefault(res){
	res.writeHead( 404 , {"Content-Type":"text/plain"});
	res.end('can not find source!');
}

/**创建http服务器*/
http.createServer(function(req,res){
	/**web客户端请求*/
	var pathname = url.parse(req.url).pathname;
	
	/**打印客户端请求req对象中url、method和headers属性*/
	console.log(req.url);
	console.log(req.method);
	console.log(req.headers);
	/**根据pathname，路由调用不同处理逻辑*/
	switch(pathname){
		case '/index': resIndex(res);//响应HTML页面到WEB客户端
		break;
		case '/img':resImage(res);//响应图片数据到WEB客户端
		break;
		case '/parse':ParseDns.parseDns(req, res);
		break;
		default: resDefault(res);//响应默认文字到WEB客户端
		break;
	}
}).listen(8080,'127.0.0.1');